﻿using WindowsGame.Device;

namespace WindowsGame.Manager
{
	/// <summary>
	/// DeviceManager delegates all work to DeviceFactory.
	/// </summary>
	public interface IDeviceManager
	{
		ADeviceFactory DeviceFactory { get; }
	}

	public class DeviceManager : IDeviceManager
	{
		// DeviceManager has dependency on DeviceFactory.
		private readonly ADeviceFactory deviceFactory;

		public DeviceManager(ADeviceFactory deviceFactory)
		{
			this.deviceFactory = deviceFactory;
		}

		public ADeviceFactory DeviceFactory
		{
			get { return deviceFactory; }
		}
	}
}